Identifying Coincidental Correctness for Fault Localization by Clustering Test Cases
نویسندگان
چکیده
Coverage-based fault localization techniques leverage coverage information to identify the faulty elements of a program. However, these techniques can be adversely affected by coincidental correctness, which occurs when faulty elements are executed but no failure is triggered. This paper proposes a clustering-based strategy to identify coincidental correctness. The key rationale behind this strategy is that test cases in the same cluster have similar behaviors. Therefore, a passed test case in a cluster, which contains failed test cases, is highly possible to be coincidental correctness. Our experimental results show that, by cleaning or relabeling these possibly coincidentally correct test cases, the effectiveness of coverage-based fault localization techniques can be effectively improved. Keywordscoincidental correctness; cluster analysis; fault localization
منابع مشابه
A Clustering-Based Strategy to Identify Coincidental Correctness in Fault Localization
Coverage-based fault localization techniques leverage the coverage information to identify the faulty elements of a program. However, these techniques can be adversely affected by coincidental correctness, which occurs when the defect is executed but no failure is revealed. In this paper, we propose a clustering-based strategy to identify coincidental correctness in fault localization. The insi...
متن کاملFPA-Debug: Effective Statistical Fault Localization Considering Fault-proneness Analysis
The aim is to identify faulty predicates which have strong effect on program failure. Statistical debugging techniques are amongst best methods for pinpointing defects within the program source code. However, they have some drawbacks. They require a large number of executions to identify faults, they might be adversely affected by coincidental correctness, and they do not take into consideratio...
متن کاملKernel-based Detection of Coincidentally Correct Test Cases to Improve Fault Localization Effectiveness
Although empirical studies have confirmed the effectiveness of spectrum based fault localization (SBFL) techniques, their performance may be degraded due to presence of some undesired circumstances such as the existence of coincidental correctness (CC) where one or more passing test cases exercise a faulty statement and thus causing some confusion to decide whether the underlying exercised stat...
متن کاملPrioritizing tests for software fault diagnosis
During regression testing, test prioritization techniques select test cases that maximize the confidence on the correctness of the system when the resources for quality assurance (QA) are limited. In the event of a test failing, the fault at the root of the failure has to be localized, adding an extra debugging cost that has to be taken into account as well. However, test suites that are priori...
متن کاملModel Checking and Delta Debugging for Automated Fault Localization; A Tutorial
Debugging programs is a complicated and cumbersome task. It is an iterative process which includes hypothesizing the cause of a failure and validating the hypothesis. Since programs comprise of many components with complex interactions this chain often involves several trials. Fault localization (FL) is the task of identifying components that are likely to cause the failure. Automated fault loc...
متن کامل